package com.zhonghui.wms.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.zhonghui.common.annotation.Excel;
import com.zhonghui.common.core.domain.BaseEntity;
import com.zhonghui.wms.domain.WmsReplenishmentApplicationDetails;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.util.Date;
import java.util.List;

/**
 * 智能仓储WMS-补货申请对象 wms_replenishment_application
 *
 * @author zhonghui
 * @date 2022-05-25
 */
@ApiModel("智能仓储WMS-补货申请对象出参")
public class WmsReplenishmentApplicationVo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    @ApiModelProperty("编号")
    private Long id;

    /** 单据号 */
    @Excel(name = "单据号")
    @ApiModelProperty("单据号")
    private String documentNumber;

    /** 状态：0未提交1待审核2已审核 */
    @Excel(name = "状态：0未提交1待审核2已审核")
    @ApiModelProperty("状态")
    private Long status;

    /** 申请人 */
    @Excel(name = "申请人")
    @ApiModelProperty("申请人")
    private Long applicant;

    /** 申请日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "申请日期", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty("申请日期")
    private Date applicationDate;

    /** 申请状态：0未提交1待审核2已审核 */
    @Excel(name = "申请状态：0未提交1待审核2已审核")
    @ApiModelProperty("申请状态")
    private Long applicationStatus;

    /** 审核人 */
    @Excel(name = "审核人")
    @ApiModelProperty("审核人")
    private Long approved;

    /** 审核日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "审核日期", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty("审核日期")
    private Date approvedDate;

    /** 审核状态：0未提交1待审核2已审核 */
    @Excel(name = "审核状态：0未提交1待审核2已审核")
    @ApiModelProperty("审核状态")
    private Long approvedStatus;

    /** 审核意见 */
    @Excel(name = "审核意见")
    @ApiModelProperty("审核意见")
    private String approvedComments;

    /** 生成采购申请 */
    @Excel(name = "生成采购申请")
    @ApiModelProperty("生成采购申请")
    private Long purchaseApplyFlag;

    /** 申请人名称 */
    @Excel(name = "申请人名称")
    @ApiModelProperty("申请人名称")
    private String applicantName;

    /** 审核人名称 */
    @Excel(name = "审核人名称")
    @ApiModelProperty("审核人名称")
    private String approvedName;

    /** 智能仓储WMS-补货申请明细信息 */
    @ApiModelProperty("智能仓储WMS-补货申请明细信息")
    private List<WmsReplenishmentApplicationDetails> wmsReplenishmentApplicationDetailsList;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setDocumentNumber(String documentNumber)
    {
        this.documentNumber = documentNumber;
    }

    public String getDocumentNumber()
    {
        return documentNumber;
    }
    public void setStatus(Long status)
    {
        this.status = status;
    }

    public Long getStatus()
    {
        return status;
    }
    public void setApplicant(Long applicant)
    {
        this.applicant = applicant;
    }

    public Long getApplicant()
    {
        return applicant;
    }
    public void setApplicationDate(Date applicationDate)
    {
        this.applicationDate = applicationDate;
    }

    public Date getApplicationDate()
    {
        return applicationDate;
    }
    public void setApplicationStatus(Long applicationStatus)
    {
        this.applicationStatus = applicationStatus;
    }

    public Long getApplicationStatus()
    {
        return applicationStatus;
    }
    public void setApproved(Long approved)
    {
        this.approved = approved;
    }

    public Long getApproved()
    {
        return approved;
    }
    public void setApprovedDate(Date approvedDate)
    {
        this.approvedDate = approvedDate;
    }

    public Date getApprovedDate()
    {
        return approvedDate;
    }
    public void setApprovedStatus(Long approvedStatus)
    {
        this.approvedStatus = approvedStatus;
    }

    public Long getApprovedStatus()
    {
        return approvedStatus;
    }
    public void setApprovedComments(String approvedComments)
    {
        this.approvedComments = approvedComments;
    }

    public String getApprovedComments()
    {
        return approvedComments;
    }
    public void setPurchaseApplyFlag(Long purchaseApplyFlag)
    {
        this.purchaseApplyFlag = purchaseApplyFlag;
    }

    public Long getPurchaseApplyFlag()
    {
        return purchaseApplyFlag;
    }

    public List<WmsReplenishmentApplicationDetails> getWmsReplenishmentApplicationDetailsList()
    {
        return wmsReplenishmentApplicationDetailsList;
    }

    public void setWmsReplenishmentApplicationDetailsList(List<WmsReplenishmentApplicationDetails> wmsReplenishmentApplicationDetailsList)
    {
        this.wmsReplenishmentApplicationDetailsList = wmsReplenishmentApplicationDetailsList;
    }

    public String getApplicantName() {
        return applicantName;
    }

    public void setApplicantName(String applicantName) {
        this.applicantName = applicantName;
    }

    public String getApprovedName() {
        return approvedName;
    }

    public void setApprovedName(String approvedName) {
        this.approvedName = approvedName;
    }

    @Override
    public String toString() {
        return "WmsReplenishmentApplicationVo{" +
                "id=" + id +
                ", documentNumber='" + documentNumber + '\'' +
                ", status=" + status +
                ", applicant=" + applicant +
                ", applicationDate=" + applicationDate +
                ", applicationStatus=" + applicationStatus +
                ", approved=" + approved +
                ", approvedDate=" + approvedDate +
                ", approvedStatus=" + approvedStatus +
                ", approvedComments='" + approvedComments + '\'' +
                ", purchaseApplyFlag=" + purchaseApplyFlag +
                ", applicantName='" + applicantName + '\'' +
                ", approvedName='" + approvedName + '\'' +
                ", wmsReplenishmentApplicationDetailsList=" + wmsReplenishmentApplicationDetailsList +
                '}';
    }
}
